package com.battle.service.service.in;

import nirvana.core.domains.vo.PageResult;
import com.battle.pojo.param.tacticsType.*;
import com.battle.pojo.vo.tacticsType.*;

import java.util.List;


/**
 * 【描 述】：战术类型服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface TacticsTypeService {

    /**
     * 创建战术类型
     *
     * @param param
     */
    void createTacticsType(CreateTacticsTypeParam param);

    /**
     * 修改战术类型
     *
     * @param param
     */
    void editTacticsType(EditTacticsTypeParam param);

    /**
     * 移除战术类型
     *
     * @param id
     */
    void removeTacticsType(Long id);

    /**
     * 启动/禁用战术类型
     *
     * @param id
     */
    void enabledTacticsType(Long id);

    /**
     * 获取战术类型详情
     *
     * @param id
     * @return
     */
    GetTacticsTypeVo getTacticsType(Long id);

    /**
     * 获取战术类型列表
     *
     * @param param
     * @return
     */
    PageResult<GetTacticsTypeListVo> getTacticsTypeList(GetTacticsTypeListParam param);


    /**
     * 获取战术类型下拉列表
     *
     * @param param
     * @return
     */
    List<GetTacticsTypeDownListVo> getTacticsTypeDownList(GetTacticsTypeDownListParam param);


}